iT邦幫忙

2026 iThome 鐵人賽

DAY 25
0
Software Development

從零開始學程式語言:Java 新手修煉記系列 第 25 篇

Day 25:Java Collection 集合物件(1)

  • 分享至 

  • xImage
  •  

本日學習:
集合物件

  1. 一群相關聯的資料(元素),集合在一起組合成一個物件
  2. 介面(Interface):
    • 存於 java.util
    • 定義 collection 的抽象函數
  3. 演算法(Algorithms):
    • Collections
    • 處理排序、搜尋功能
    • Java Collections Framework
  4. 實作(Implementations):
    • 只定義抽象類別的名稱,不定義該函數處理細節
    • AbstractCollection
  5. 集合的特性:
    • 自動排序性
    • 重複性
    • 次序性
    • 使用關鍵性:利用關鍵值存放元素,一個 key 對照一個 value,關鍵值的內容必須為一存在
  6. 集合類別/介面:TreeSet、SortedSet、HashSet、LinkedHashSet、ArrayList、LinkedList、TreeMap、SortedMap、HashMap、Hashtable、LinkedHashMap
  7. Set 介面:
    • 元素不能重複出現
    • Collection 的子介面
    • 要載入 java.util
  8. 例如:
import java.util.*;
public class Ch25_1{
    public static void mian(String[] args){
        HashSet<String> hset = new HashSet<String>();
        hset.add("Monkey");
        hset.add("Bunny");
        hset.add("Monkey"); // HashSet 集合內的元素不可重複存在,因此最後印出沒有這個元素
        System.out.println("hset 內容:" + hset);
    }
}

泛型技術

  1. 利用通用型態來代表所有可能的型態
  2. 針對這個通用型態來撰寫相對應的資料成員與函數成員
  3. 定義泛型類別:class Member{內容;} // 為通用型態,且為 wrapper class 裡的資料型態
  4. 建立 Member 物件:Member obj = new Member();

HashSet 類別

  1. 具有不可重複性
  2. 不具次序性
  3. 建構子:
    • HashSet()
    • HashSet(Collection<? extends T> c)

TreeSet 類別

  1. 可以自動由小到大排序,具有自動排序性
  2. 具有不可重複性
  3. 實作 SortedSet 介面
  4. 建構子:
    • TreeSet()
    • TreeSet(Collection<? extends T> c)
  5. 函數:
    • T first()
    • SortedSetheadSet(T toElm):取得小於 Elm 的元素
    • T last()
    • SortedSetsubSet(T fromElm, T toElm)
    • SortedSettailSet(T fromElm):取得大於等於 Elm 的元素

上一篇
Day 24:例外處理
下一篇
Day 26:Java Collection 集合物件(2)
系列文
從零開始學程式語言:Java 新手修煉記 共 29 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言